package com.ruoyi.produce.base.shift.service;

import com.ruoyi.produce.base.shift.domain.ProduceShiftInfo;

import java.util.List;

/**
 * 班次信息
 * 业务层
 * @author lsy
 */
public interface IProduceShiftInfoService {
    /**
     * 查询班次
     * @param produceShiftInfo
     * @return
     */
    List<ProduceShiftInfo> selectProduceShiftInfoList(ProduceShiftInfo produceShiftInfo);

    /**
     * 通过编号查询班次
     * @param shiftInfoId
     * @return
     */
    ProduceShiftInfo selectProduceShiftInfoById(String shiftInfoId);

    /**
     * 新增班次
     * @param produceShiftInfo
     * @return
     */
    int insertProduceShiftInfo(ProduceShiftInfo produceShiftInfo);

    /**
     * 修改班次
     * @param produceShiftInfo
     * @return
     */
    int updateProduceShiftInfo(ProduceShiftInfo produceShiftInfo);

    /**
     * 删除班次
     * 仅修改删除标志
     * @param produceShiftInfo
     * @return
     */
    int updateProduceShiftInfoDeleteFlag(ProduceShiftInfo produceShiftInfo);

    /**
     * 生成最新的班次编号
     * @return
     */
    String createShiftInfoId();

//    /**
//     * 生成当天的班次编号
//     * @return
//     */
//    String createYesterdayShiftIdDay();

    /**
     * 生成当天白班编号
     * @return
     */
    public String createDayShiftId();

    /**
     * 生成明天白班编号
     * @return
     */
    public String createDayTomorrowShiftId();

    /**
     * 生成当天夜班编号
     * @return
     */
    public String createNightShiftId();

    /**
     * 生成明天夜班编号
     * @return
     */
    public String createNightTomorrowShiftId();
}
